package exception;
/**
 * java异常处理机制:
 * try-catch
 * 语法:
 * try{
 * 	程序代码片段
 * }catch(XXXException e){
 * 	try中代码出现XXXException后的处理代码
 * }
 * @author Xiloer
 *
 */
public class TryCatchDemo {
	public static void main(String[] args) {		
		System.out.println("程序开始了...");
		try {
//			String str = null;
//			String str = "";
			String str = "a";
			System.out.println(str.length());
			System.out.println(str.charAt(0));
			System.out.println(Integer.parseInt(str));
			//try语句块中出错代码以下的内容都不会执行
			System.out.println("!!!!!!!!!!!!");
			System.out.println("~~~~~~~~~~~~");
		}catch(NullPointerException e) {
			System.out.println("出现了空指针");
		//catch可以定义多个，针对try中不同异常有不同处理时要分别捕获	
		}catch(StringIndexOutOfBoundsException e) {
			System.out.println("出现了下标越界!");
		//在最后一个catch处捕获Exception可防止未知异常导致程序中断
		}catch(Exception e) {
			System.out.println("反正就是出了个错!");
		}
		System.out.println("程序结束了!");
	}
}










